#ifndef __JOYSTICKMANAGER_H__
#define __JOYSTICKMANAGER_H__

#include <Metgine/Input/InputManager.h>
#include <Metgine/Core/Singleton.h>

namespace Metgine
{
namespace Input
{

class METGINE_API JoystickManager : public InputManager, public Core::Singleton<JoystickManager>
{
    friend class Core::Singleton<JoystickManager>;
    public:
        const float GetAxis(int id, int axis);
        bool GetButton(int id, int button);
    private:
        JoystickManager();
        ~JoystickManager();
        bool m_buttonsPressed[sf::Joy::Count][sf::Joy::ButtonCount];
        float m_axis[sf::Joy::Count][sf::Joy::AxisCount];
};
}; // Input
}; // Metgine



#endif // JOYSTICKMANAGER_H
